﻿#define _CRT_SECURE_NO_WARNINGS
#include<string.h>
#include<stdio.h>
//int main()
//{
//    unsigned char puc[4];
//    struct tagPIM
//    {
//        unsigned char ucPim1;
//        unsigned char ucData0 : 1;
//        unsigned char ucData1 : 2;
//        unsigned char ucData2 : 3;
//    }*pstPimData;
//    pstPimData = (struct tagPIM*)puc;
//    memset(puc, 0, 4);
//    pstPimData->ucPim1 = 2;
//    pstPimData->ucData0 = 3;
//    pstPimData->ucData1 = 4;
//    pstPimData->ucData2 = 5;
//    printf("%02x %02x %02x %02x\n", puc[0], puc[1], puc[2], puc[3]);
//    return 0;
//}


//int main() {
//    int a, b,c , d;
//    int s;
//    for (int i = 10000;i <= 99999;i++)
//    {
//        s = 0;
//        a = (i / 10000) * (i % 10000);
//        b = (i / 1000) * (i % 1000);
//        c = (i / 100) * (i % 100);
//        d = (i / 10) * (i % 10);
//        s = a + b + c + d;
//        if (s == i)
//        {
//            printf("%d ", s);
//        }
//    }
//    return 0;
//}



//int main()
//{
//    int arr[50];
//    int n;
//    scanf("%d", &n);
//    for (int i = 0;i < n;i++)
//    {
//        scanf("%d", &arr[i]);
//    }
//    int ng;
//    scanf("%d", &ng);
//    for (int i = 0;i < n;i++)
//    {
//        if (arr[i] == ng)
//            continue;
//        else
//            printf("%d ", arr[i]);
//    }
//    return 0;
//}
//
//struct Stu
//{
//	char name[20];//名字 
//	int age;//年龄 
//	char sex[5];//性别 
//	char id[20];//学号 
//};
//int main()
//{
//	//按照结构体成员的顺序初始化 
//	struct Stu s = { "张三", 20, "男", "20230818001" };
//	printf("name: %s\n", s.name);
//	printf("age : %d\n", s.age);
//	printf("sex : %s\n", s.sex);
//	printf("id : %s\n", s.id);
//	printf("\n");
//
//	//按照指定的顺序初始化 
//	struct Stu s2 = { .age = 18, .name = "lisi", .id = "20230818002", .sex =
//   "⼥" };
//	printf("name: %s\n", s2.name);
//	printf("age : %d\n", s2.age);
//	printf("sex : %s\n", s2.sex);
//	printf("id : %s\n", s2.id);
//	return 0;
//}


int main()
{
	//struct S3
	//{
	//	double d;
	//	char c;
	//	int i;
	//};
	//printf("%d\n", sizeof(struct S3));
	////练习4-结构体嵌套问题 
	//struct S4
	//{
	//	char c1;
	//	struct S3 s3;
	//	double d;
	//};
	//printf("%d\n", sizeof(struct S4));
	struct A
	{
		int _a : 2;
		int _b : 5;
		int _c : 10;
		int _d : 30;
	}; 
	printf("%zd", sizeof(struct A));
	return 0;
}